home *** CD-ROM | disk | FTP | other *** search
- #ifndef _SIGUI_H
- #define _SIGUI_H
-
- #ifndef _SILIB_H
- # include <silib.h>
- #endif
-
- #ifndef _VA_LIST_DEFINED
- # define _VA_LIST_DEFINED
- typedef char *va_list;
- #endif
-
- #define SIP_NANE_LEN (32)
-
- typedef struct _sip_t /* 部品データ構造体 */
- {
- struct _sip_t *next;
- unsigned int att;
- unsigned int stt;
- SIJ_T (*coFnc)(); /* コンストラクション */
- void (*deFnc)(); /* デストラクション */
- int (*prFnc)(); /* パラメータ */
- int (*exFnc)(); /* 実行 */
- char name[SIP_NANE_LEN];
- } SIP_T;
-
- typedef struct /* 部品管理構造体 */
- {
- int num;
- SIP_T *topSip;
- } SIPARTS_T;
-
- extern SIPARTS_T SiParts;
-
-
-
-
- typedef struct _sij_t /* オブジェクト構造体 */
- {
- struct _si_t *next , *prev;
- struct _si_t *son, *parent;
- SIP_T *sip; /* 部品種別 */
- unsigned int att;
- unsigned int stt;
- void *ptr; /* ユーザーポインタ */
- void *par; /* パラメータ */
- } SIJ_T;
-
- typedef struct _sictr_t /* コントローラ型 */
- {
- int numObj; /* 接続されている部品数 */
- SIJ_T *topObj, *lastObj;
- } SICTR_T;
-
- extern SIJ_T *SijTop;
-
- typedef struct (int (*))(SIJ_T *, va_list) SIM_T; /* メッセージタイプ */
-
-
- /*----------------------------------------------------------------------*/
- /* オブジェクト属性 */
- /*----------------------------------------------------------------------*/
- #define SIJSTT_ACTIVE (0x0000_0001) /* アクティブ(活動中) */
- #define SIJSTT_TARGET (0x0000_0002) /* 操作対象 */
- #define SIJSTT_DISP (0x0000_0010) /* 表示中 */
-
- /*----------------------------------------------------------------------*/
- /* メッセージ */
- /*----------------------------------------------------------------------*/
-
- extern SIM_T SIM_SET_PARTS; /* GUI 部品の登録 */
-
- extern SIM_T SIM_OPEN; /* オープン */
- extern SIM_T SIM_CLOSE; /* クローズ */
- extern SIM_T SIM_UPDATE; /* アップデード */
- extern SIM_T SIM_SUSPEND; /* サスペント(停止) */
- extern SIM_T SIM_RESUME; /* リジューム(再活動) */
-
-
- #endif
-